#ifndef CONSOLE_UI_H_INCLUDED
#define CONSOLE_UI_H_INCLUDED

#include "ui.h"
#include "conversation.h"
#include "words.h"

#define UI_DIALOG_CONVERSATION 1
#define UI_DIALOG_ASK_YES_NO 2

#define USING_CONSOLE_UI

class ConsoleUI: public UIBase {
    int wordLength = 0;
    char* buf = 0;

    bool _Conversation(std::vector<Segment> &convs);
    bool* _AskYesNo(std::vector<Segment>&);

public:
    void FadeOff(float second);
    void ClearAskPanel();
    void TwinklePanel();

    ConsoleUI();
    ~ConsoleUI();

    virtual void ReloadWords(std::vector<Word> &words);
    virtual void DrawMan(int state);
    virtual char AskLetter();
    virtual void SetPanelWidth(int length);
    virtual void SetWordBuffer(char *buf);
    virtual void RenderWordPanel();
    virtual void* Dialog(std::vector<Segment> &convs, int type);
    virtual int MainMenu();
    virtual void OnExit();
    virtual void OnStart();
};

typedef ConsoleUI UI;

#endif // CONSOLE_UI_H_INCLUDED
